+2003-10-18 Raymond Penners <raymond@dotsphinx.com>\r
+\r
+ * src/*: Attempted to fix the grippers for the GNAT Programming\r
+ System. Things behave a tiny bit better now. See #ifdef GNATS_HACK\r
+\r
2003-10-17 Raymond Penners <raymond@dotsphinx.com>\r
\r
* src/wimp_style.c: Horizontal/vertical scrollbars were mixed up,\r
gint height,
GtkOrientation orientation)
{
- XpThemeElement hndl;
-
if (!GTK_IS_HANDLE_BOX (widget))
{
+ XpThemeElement hndl;
+
+ sanitize_size (window, &width, &height);
+
if (orientation == GTK_ORIENTATION_VERTICAL)
hndl = XP_THEME_ELEMENT_GRIPPER_V;
else
case XP_THEME_ELEMENT_REBAR:
case XP_THEME_ELEMENT_GRIPPER_H:
case XP_THEME_ELEMENT_GRIPPER_V:
- ret = 0;
+ ret = CHEVS_NORMAL;
break;
case XP_THEME_ELEMENT_CHEVRON:
return FALSE;
part_state = xp_theme_map_gtk_state(element, state_type);
+
+#ifdef GNATS_HACK
+ if (element == XP_THEME_ELEMENT_GRIPPER_V
+ || element == XP_THEME_ELEMENT_GRIPPER_H)
+ {
+ /* Hack alert: when XP draws a gripper, it does not seem to fill
+ up the whole rectangle. It only fills the gripper line
+ itself. Therefore we manually fill up the background here
+ ourselves. I still have to look into this a bit further, as
+ tests with GNAT Programming System show some awkward
+ interference between this FillRect and the subsequent
+ DrawThemeBackground(). */
+ FillRect (dc, &rect, (HBRUSH) (COLOR_3DFACE+1));
+ }
+#endif
+
draw_theme_background_func(theme, dc, element_part_map[element], part_state, &rect, pClip);
gdk_win32_hdc_release(drawable, style->dark_gc[state_type], 0);